package com.luwak.common.utils;

import com.xiaoleilu.hutool.http.HttpUtil;

import java.io.File;
import java.util.HashMap;
import java.util.Map;

/**
 * @author ChenXc
 * @version V1.0
 * @Date 2018/4/7 下午7:50
 * @Description TODO(身份证识别)
 * 检测和识别中华人民共和国第二代身份证的关键字段内容，并支持返回身份证正反面信息、身份证照片分类判断结果。
 * 图片要求 ：
 * 图片格式：JPG(JPEG)，PNG
 * 图片像素尺寸：最小48*48像素，最大4096*4096像素
 * 图片文件大小：2MB
 * 调用方法 POST
 */
public class IDCardMessageUtils {

    private final static String API_KEY = "GM6iCTiipd-5F-cyxQ1TWOooXxJMznUM";
    private final static String API_SECRET = "QLD2qwg-lOjQb0peNKnoIgPSNSwl31TT";
    /**
     * 身份证合法性（1：返回   0：不返回）
     * 注意：2017年6月7日之后，只有正式 API Key 能够调用此参数返回分类结果，免费 API Key 调用后无法返回分类结果。
     */
    private final static int LEGALITY = 1;
    private final static String REQ_URL = "https://api-cn.faceplusplus.com/cardpp/v1/ocridcard";

    /**
     * @param image_file
     * @return
     */
    public static String getIDCardInfo(File image_file) {

        Map<String, Object> paramMap = new HashMap<>();
        paramMap.put("api_key", API_KEY);
        paramMap.put("api_secret", API_SECRET);
        paramMap.put("image_file", image_file);
        paramMap.put("legality", LEGALITY);
        String result = HttpUtil.post(REQ_URL, paramMap);
        return result;
    }

}
